package socrates.ws;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;

import org.json.JSONArray;
import org.json.JSONObject;

import socrates.dto.CursoDTO;
import socrates.dto.PagoPendienteDTO;
import socrates.ws.RestClient.RequestMethod;

public class WSPagoPendiente {
	RestClient con;
	
	public WSPagoPendiente(String url, int userid){
		url += "?CodAlumno="+userid;
		con = new RestClient(url);
	}
	
	public List  obtenerPagoPendiente(){
		List<PagoPendienteDTO> lsPagoPendiente = new ArrayList();
		String response ="";
		try{
			con.Execute(RequestMethod.GET);
			response = con.getResponse();
			
			JSONArray jsarray = new JSONArray(response);
			SimpleDateFormat formatoDelTexto = new SimpleDateFormat("yyyyMMdd");
			
			for (int i = 0; i < jsarray.length(); i++) {
				PagoPendienteDTO objPagoPendiente = new PagoPendienteDTO();
				JSONObject jObject = jsarray.getJSONObject(i);
				objPagoPendiente.setCodAlumno(jObject.getInt("CodAlumno"));
				objPagoPendiente.setCodPagoPendiente(jObject.getInt("CodPagoPendiente"));
				objPagoPendiente.setDescuento(jObject.getDouble("Descuento"));
				String fechaEmision = jObject.getString("FecEmision");
				String fechaVencimiento = jObject.getString("FecVencimiento");
				objPagoPendiente.setFechaEmision(formatoDelTexto.parse(fechaEmision));
				objPagoPendiente.setFechaVencimiento(formatoDelTexto.parse(fechaVencimiento));
				objPagoPendiente.setImporte(jObject.getDouble("Importe"));
				objPagoPendiente.setMora(jObject.getDouble("Mora"));
				objPagoPendiente.setNroCuota(jObject.getInt("NroCuota"));
				objPagoPendiente.setNroDocumento(jObject.getString("NroDocumento"));
				objPagoPendiente.setSaldo(jObject.getDouble("Saldo"));
				objPagoPendiente.setTotal(jObject.getDouble("Total"));
				lsPagoPendiente.add(objPagoPendiente);
			}
			
		}catch(Exception e){
			e.printStackTrace();
		}
		
		
		return lsPagoPendiente;
	}
}
